The present invention relates to an image processing apparatus and method for converting image data to video signals and, more particularly, for selecting a first image data stored in a first memory or a second image data stored in a second memory and converting the selected first or second image data to a video signal, where the second image data is selected after the second image data is stored in the second memory, and selection between the first and second image data is changed during a vertical blanking period.
Conventionally, there is an image processing apparatus which accepts still image information as input information, stores the still image information in frame memory, then outputs the information to a display device. As an image processing apparatus of this type, a film player which senses images on a developed photograph film using a line sensor or a field sensor, such as CCD (charge coupled device), converts the sensed images into image signals, and displays the images on a display has been suggested.
An external view of a system including such a film player is shown in FIG. 22. In FIG. 22, reference numeral 560 denotes a film player (main body), and, through a film insertion opening 562 of the film player 560, a film cartridge 561 is inserted. In the example of FIG. 22, an APS (advanced photo system) film cartridge is shown for providing a developed film. For providing a 35 mm film (sleeve or mount), a member for holding a sleeve (or mount) is used. Further, reference numeral 563 denotes a display device conforming to television standards; 564, a cable for transferring video signals; 565, a cord; 566, a remote controller; and 661 to 668, various control buttons.
Next, a brief view of an APS film is shown in FIG. 23. As shown in FIG. 23, a film 1102 is preserved within the film cartridge 561, wound around a spool 1101. The film 1102 has perforations 1103 and electromagnetic recording areas 1104.
A destination of the output from the film player 560 may be the conventional display device 563 shown in FIG. 22. The film player 560 and the display device 563 communicate using video signals. Since the display device 560 conforming to the television standards performs scanning in synchronization with a horizontal synchronizing signal and a vertical synchronizing signal (or a composite signal in which the foregoing two kinds of synchronizing signals are mixed), and image signals are combined with the synchronizing signals to form the video signals.
As for video signals, there are several standards; NTSC (National Television System Committee) which is a color television standard adopted in Japan and the United States, PAL (Phase Alteration by Link) which is one of color television standards, SECAM (Sequentied Colours Amemoir) which is another one of the color television standards, and so on. As typical video signals, waveforms of NTSC (EIA RS-170) video signals in a four-field sequence are shown in FIG. 24.
A user interface to the display device 563 connected to the film player 560 is the remote controller 566 shown in FIG. 22, for instance. In the example shown in FIG. 22, the remote controller 566 is connected to the film player 560 via the cord 565, but infrared is widely used instead of the cord 565.
In the APS, 15-, 25-, and 40-exposure films are available. All the images exposed on a film are printed out as an index print after the film is developed. A brief view of an index print is shown in FIG. 25. For displaying a desired image on a film using the film player 560, a user selects the exposure number on the basis of information which is similarly to the index print, using the remote controller 566. Therefore, it is common that the film player 560 has a function for displaying information similarly to the index print.
FIGS. 26A to 26C show cases where a display screen is divided in three different ways for displaying index images. FIG. 26A shows a case where an index image is displayed in a manner similar to the index print. Since the maximum number of exposures is 40 in the APS as described above, if the display screen has 512×1024 pixels in the vertical and horizontal directions, respectively, then the size of each thumbnail image of the index image is 84×112 pixels. However, the ratio of the height to the width of a display screen conforming to the NTSC standard is 3:4, and, for expressing each pixel of the index image as a square, it is general to edit the index image so as to be expressed within 480×640 pixels, in consideration of the size of memory for storing the edited index image. FIG. 26B shows a case where the index image shown, in FIG. 26A is edited to be within the size of 480×640 pixels. Further, it is common to display the image on the display screen as shown in FIG. 26C.
A user selects a desired thumbnail image from the index image displayed as shown in FIG. 26C. The buttons 661 to 664 of the remote controller 566 are for changing a selected image among the thumbnail images (a selected image is high-lighted by being displayed in reverse or surrounded by a frame, for instance) to up, down, right and left. After a desired thumbnail image is selected from the index image, the selection button 667 is pressed to set the selection of the thumbnail image. Further, in order to cancel the selection of the image, the cancel button 668 is to be pressed. After the selection, the original image of the selected thumbnail image is displayed by itself on the display screen. Thereafter, it is possible to change images to be displayed using the up button 665 and the down button 666. Further, it is possible to configure the system to display the index image when the cancel button 668 is pushed while displaying images one by one.
For displaying an image read by the conventional film player on the display device adopting television standards as described above, image signals should be combined with the synchronizing signals as shown in FIG. 24.
FIG. 27 is a block diagram showing the main components of a conventional apparatus for video display. The apparatus includes a controller 901, a storage unit 902, a decoder 904, an A/D converter 905, a D/A converter 906, a video encoder 907, and video memory 1201. The source of image information in the film player is a film, as described above, and images on the film are dealt with in a form of electric signal obtained by a CCD, for instance, as a result of photoelectric conversion.
Referring to FIG. 27, electric image signals (level signals) are digitized by the A/D converter 905, then processed by the decoder 904 for extracting valid image signals from the digitized signals. Although the order of the input image signals may differ depending upon the scanning method of the CCD, the digitized signals of a frame image are eventually stored in the storage unit 902. The stored data is transferred to the video memory 1201, and consecutively outputted to the D/A converter 906 at a video rate. The digital signals converted into analog signals by the D/A converter 906 are encoded into video signals which include luminance information, color information, and synchronizing information by the video encoder 907, then outputted to the display device 563 (FIG. 22).
In the film player 560 as described above, the source of image information is a photograph film (developed), not a moving image, and it is necessary to keep providing video signals of the selected still image on the film to the display device 563. Furthermore, in order to change the currently displayed image to another image, the content of the storage unit 902 must be updated to image information of a new image to be displayed next while outputting video signals of the current image. In the conventional apparatus, the storing and the reading of data are performed in parallel using the video memory 1202 of a dual-port type. In this configuration, the storage unit 903 and the video memory 1201 are used for different purposes, and when generating an index image, for instance, images on the film are sensed and stored in the storage unit 902 one by one, the size of each image is reduced, then the reduced (thumbnail) image is stored in the video memory 1201 in an index image format, thereby the index image as shown in FIG. 26C is outputted to the display device 563.
In most cases, the output from a CCD can be directly used for display, as apparently seen in a case of a camcorder. When sensing a moving image, image information changes as time elapses, and it is not necessary to temporarily store the image information in the storage unit 902 (except a case of performing digital processing on the image information). In contrast, in the film player 560 as described above, a frame of a film is sensed by a CCD while illuminating it from backside, and the illuminating of the frame, for scanning, for a long time causes a raise in temperature inside the film player 560 to a high degrees. Thus, the light is turned off after necessary information is stored in the storage unit 902.
With the foregoing reasons, video signals are generated using the storage unit 902 and the video memory 1201. However, a dual-port memory device is more expensive than a single-port memory device, and it is preferred to avoid using dual-port memory devices to provide an inexpensive film player. There is an apparatus using a single-port memory device instead of a dual-port memory device; however, in this apparatus, while reading data (video signals) from the single-port memory, updating of the content of the memory is inhibited except during synchronizing periods. In other words, storing of data of an image to be displayed next must be performed during the synchronizing periods.
FIG. 28 shows timing of displaying a frame image for visually illustrating the video synchronizing periods. Referring to FIG. 29, a frame period is 1/30 second, and a field period is 1/60 second (16.7 ms). In NTSC, an interlacing method (a scanning method adopted in a raster-scanning type display device) is adopted, and images of two different fields are alternatively outputted. In FIG. 29, there is 10.9 μs for a horizontal synchronizing period in every horizontal scanning period, and 571.5 μs for a vertical synchronizing period in every vertical scanning period.
It is understood from the aforesaid numbers that periods when updating of data, while reading signals from a single-port memory device, used as the video memory 1201, is allowed is only about 20% of one field period. Even if the memory has a capacity of storing images of several fields and a new image is written to the memory part with part in an area other than an area where image signals are currently read out, it takes several field periods to store a frame image. After the new frame image is stored, the area, in the video memory 1201, which is accessed for reading image data is changed to the area where the new image is stored.
Therefore, in order to optimize the user interface by shortening the period required since another image is requested to be displayed until the requested image is actually displayed, it is preferable to use a dual-port memory device or a plurality of single-port memory devices while selecting one of them each time after a new image is stored.
In either case, for providing a satisfactory user interface, the cost of an apparatus becomes high. Furthermore, use of a plurality of memory devices makes the configuration of a control circuit, such as a bus arbiter, complicated.
More specifically, in an image processing apparatus which receives still image information and outputs video signals for display, especially in an apparatus, such as a film player, which is required to consecutively display a plurality of still images, it is necessary to temporality store each still image in a storage. Furthermore, if the storage is a single-port device, while reading data of the still image from the storage at video rate, data can be updated only during the synchronizing period; or the storage has to be a dual-port device.
The aforesaid control is for simply displaying a still image of an arbitrary frame. Further, there is a case where the apparatus is added with a function of rotating a displayed image by operating the buttons of the remote controller 566. More specifically, it is possible to configure the system so that the button 661 is for designating rotation of an image by 90 degrees, the button 662 is for designating rotation by 180 degrees, the button 663 is for designating rotation by 270 degrees, and the button 664 is for designating to display the image in the original direction (or for designating to display a mirror image), for instance.
Examples of images displayed on the display device 563 when an image is rotated as described above, are shown in FIGS. 29A to 29D. In FIG. 29A, an image is originally displayed in a ratio of 3:4 (vertical:horizontal). FIG. 21B shows an image when the original image, shown in FIG. 21A, is rotated by 90 degrees, FIG. 29C shows an image when the original image is rotated by 180 degrees, and the FIG. 29D shows an image when the original image is rotated by 270 degrees. Note, when the image is rotated by 90 or 270 degrees, the size of the image is reduced to 75% (=¾) of the original size so that the image is not cut because of the size and shape of the display screen.
For performing the aforesaid rotation processing, including the reduction of an image, a displayed image is to be modified when the apparatus has the configuration as shown in FIG. 27, and during modifying the image, no image can be displayed. In order to keep displaying an image, the modification of the image must be completed in one vertical blanking period between fields, which requires an apparatus of very high speed. Furthermore, since the reduction of an image should be performed along with the transference of a frame image to the video memory 1201 which is a dual-port memory device, as described above, higher speed and more complicated circuit is required. Further, in a case where storage area for storing image data which is currently displayed and storage area for storing developed (e.g., rotated) image data are identical, too, development of an image to be displayed next must be performed in one vertical blanking period so as to start displaying the developed image in the next frame period.
In the above cases, if DRAM is used as the video memory 1201, a vertical blanking period can not be assigned for refreshing operation, thus it is necessary to access all the addresses in one frame period to maintain the data in the DRAM. In other words, it is not possible to reserve an area in the DRAM for an index image and keep data of the index image when displaying of a single image is designated, as a function of the film player as described above, because all the data stored in the DRAM has to be read in each frame period. Thus, it is necessary to develop an index image each time the index image is requested to be displayed, which requires a longer time than rotating an image.
As described above, in an image processing system for displaying an image stored in frame memory which does not have video RAM for exclusive use for display, development of an image to be displayed next should be performed during the synchronizing period, or a plurality of memory devices or areas, which are independently controlled, are provided and sequentially used for developing images. However, in the image processing system, for modifying an image which is currently stored in the memory for display and displaying the modified image, there is no other way but developing image data in another memory area little by little in spare moments from reading of the data to be displayed (e.g., vertical synchronizing period).